Career 2025 2024 2023 2022 2021 2020 2019 2018 2017 2016 2015 2014 2013 2012 2011
All Rounds Final 1/2 1/4 First Second Third Fourth Pre-q Rubber 1 Rubber 2 Rubber 3 Rubber 4 Rubber 5 Robin Bronze Q3 N/A Q2 Q1 ER Q4 CR QF Q5 N/A
All Courts Acrylic N/A Clay Grass Carpet Hard I.hard
All Tour Banja Luka Challenger Milan Challenger Karlsruhe Challenger Wimbledon - London Pozoblanco Challenger San Marino Challenger U.S. Open - New York Como Challenger Braga Challenger Davis Cup, Group I, 1R, BIH-GER 0-4 Alicante Challenger Lisbon Challenger M25 Santa Margherita di Pula Malaga Challenger European Open - Antwerp M25 Santa Margherita di Pula BMW Open - Munich Ismaning Challenger Bergamo Challenger Sofia Open - Sofia Moselle Open - Metz M25 Antalya Naples Challenger Open 13 Provence - Marseille Australian Open - Melbourne Barcelona Open Banc Sabadell - Barcelona BNP Paribas Open - Indian Wells Miami Open - Miami Noumea Challenger Qatar ExxonMobil Open - Doha Manama Challenger Open Sud de France - Montpellier Dubai Duty Free Tennis Championships - Dubai Szekesfehervar Challenger Phoenix Challenger Barletta Challenger Rome Challenger Granby Challenger Zadar Challenger Iasi Challenger Split Challenger Vicenza Challenger Lexington Challenger Zagreb Challenger Chicago Challenger French Open - Paris Winnipeg Challenger Bordeaux Challenger Prague Challenger Lyon Challenger Internazionali BNL d'Italia - Rome U.S. Open - New York Perugia Challenger Ilkley Challenger Wimbledon - London Brasov Challenger EFG Swiss Open - Gstaad San Marino Challenger Cary Challenger Cordenons Challenger Verona Challenger Orleans Challenger Villena Challenger Nonthaburi 3 Challenger M25 Santa Margherita di Pula M25 Santa Margherita di Pula Roanne Challenger Brest Challenger M25 Antalya Belgrade Open - Belgrade Lyon Challenger Glasgow Challenger Thionville Challenger Lugano Challenger Sibiu Challenger M15 Antalya St. Tropez Challenger M15 Antalya Mauthausen Challenger M15 Porec Zadar Challenger Open 13 Provence - Marseille Open Occitanie - Montpellier Hong Kong Tennis Open - Hong Kong Australian Open - Melbourne M15 Dubrovnik Sofia 1 Challenger Guangzhou Challenger Gwangju Challenger Porto Challenger Zagreb Challenger Morelia Challenger Cuernavaca Challenger Grodzisk Mazowiecki Challenger Wuxi Challenger Skopje Challenger French Open - Paris Perugia Challenger Boss Open - Stuttgart Birmingham Challenger Wimbledon - London Nottingham 2 Challenger Braunschweig Challenger Nottingham 3 Challenger Pozoblanco Challenger San Marino Challenger U.S. Open - New York Segovia Challenger Zug Challenger Egypt F9 Istanbul Challenger M25 Zlatibor Villena Challenger Valencia Challenger St. Tropez Challenger Orleans Challenger Olbia Challenger Croatia F7 Serbia F13 Turkey F3 Croatia F2 Turkey F14 Turkey F15 Morocco F1 Bosnia & Herzegovina F1 Morocco F2 Bosnia & Herzegovina F3 Bosnia & Herzegovina F4 Egypt F14 Egypt F15 France F12 Egypt F16 Serbia F7 Croatia F8 Croatia F9 Serbia F13 Serbia F14 France F18 France F19 Croatia F10 Croatia F11 France F21 France F2 Turkey F1 Turkey F2 Turkey F3 France F4 France F5 Egypt F10 France F7 Egypt F11 Bosnia & Herzegovina F1 Turkey F15 Bosnia & Herzegovina F2 Turkey F16 Bosnia & Herzegovina F3 Bosnia & Herzegovina F4 Bulgaria F2 Bulgaria F3 Bulgaria F4 France F14 Bulgaria F6 Turkey F25 Serbia F7 Austria F6 Spain F21 Austria F7 Spain F22 Austria F8 Turkey F31 Turkey F32 France F20 Serbia F14 Czech Republic F4 Czech Republic F5 Tunisia F9 Tunisia F10 Tunisia F11 Turkey F44 Turkey F45 Turkey F46 Egypt F1 Tunisia F1 Egypt F2 Tunisia F2 Egypt F3 France F3 Tunisia F5 Tunisia F6 Turkey F7 France F4 Switzerland F1 Egypt F12 Spain F7 Egypt F13 Greece F3 Greece F4 Tunisia F15 Turkey F16 Israel F4 Turkey F17 Israel F5 Bosnia & Herzegovina F1 Turkey F19 Bosnia & Herzegovina F2 Turkey F20 Bosnia & Herzegovina F3 Bosnia & Herzegovina F4 Bosnia & Herzegovina F5 India F8 India F9 Serbia F3 India F10 Serbia F4 France F14 Serbia F6 Slovakia F2 Serbia F7 Serbia F8 Serbia F9 Serbia F10 Switzerland F4 Croatia F14 Croatia F15 Croatia F16 Croatia F17 France F20 Germany F15 Greece F7 Greece F8 Greece F9 Kuwait F1 Kuwait F2 Tunisia F32 Tunisia F33 Germany F1 Turkey F2 France F2 Turkey F3 France F3 Great Britain F3 Turkey F7 Turkey F8 Italy F1 Italy F2 Turkey F10 Turkey F11 Turkey F14 Turkey F15 Bosnia & Herzegovina F1 Bosnia & Herzegovina F2 Bosnia & Herzegovina F3 Spain F15 Tunisia F21 Macedonia F1 Germany F5 Turkey F27 Portugal F8 Portugal F9 Serbia F1 Serbia F2 Serbia F4 Serbia F5 Switzerland F3 Italy F26 Serbia F6 France F18 France F19 France F20 France F21 Croatia F9 Croatia F10 Croatia F11 Norway F2 Norway F3 Turkey F47 Tunisia F2 (Hammamet) France F3 (Veigy-Foncenex) Great Britain F1 (Glasgow) Great Britain F2 (Tipton) Tunisia F6 (Hammamet) Italy F2 (Trento) Italy F3 (Basiglio) Turkey F9 (Antalya) Turkey F10 (Antalya) Turkey F11 (Antalya) Tunisia F14 (Hammamet) France F8 (La Grande Motte) Tunisia F15 (Hammamet) Turkey F18 (Antalya) Czech Republic F1 (Prague) Bosnia & Herzegovina F2 (Brcko) Bosnia & Herzegovina F3 (Kiseljak) Israel F10 (Kiryat Shmona) Israel F11 (Herzlia) Israel F12 (Tel Aviv) Georgia F1 (Telavi) Portugal F10 (Torres Vedras) Georgia F2 (Telavi) Georgia F3 (Telavi) Ireland F2 (Dublin) Serbia F1 (Novi Sad) Belarus F2 (Minsk) Serbia F2 (Novi Sad) Belarus F3 (Minsk) Serbia F3 (Subotica) Italy F27 (Piombino) France F19 (Mulhouse) France F20 (Plaisir) France F21 (Forbach) Turkey F36 (Antalya) Turkey F37 (Antalya) Turkey F38 (Antalya) Turkey F39 (Antalya) Malaysia F3 (Kuala Lumpur) Qatar F4 (Doha) Qatar F5 (Doha) Qatar F6 (Doha) France F3 (Veigy-Foncenex) Switzerland F2 (Bellevue) Italy F1 (Trento) Turkey F15 (Antalya) Turkey F16 (Antalya) Bosnia & Herzegovina F1 (Doboj) Bosnia & Herzegovina F2 (Brcko) Bosnia & Herzegovina F3 (Kiseljak) Italy F13 (Padova) Spain F17 (Bakio) Austria F2 (Kramsach) Austria F3 (Wels) Italy F20 (Pontedera) Austria F5 (Vogau) Italy F32 (Santa Margherita Di Pula) Italy F33 (Santa Margherita Di Pula) Italy F34 (Santa Margherita Di Pula) Turkey F36 (Antalya) Turkey F39 (Antalya) Turkey F40 (Antalya) M15 Veigy-Foncenex M25 Barnstaple M15 Antalya M25 Trento M15 Antalya M15 Toulouse M15 Porec M15 Poitiers M15 Opatija M25 Santa Margherita Di Pula M25 Santa Margherita Di Pula M15 Cancun M25 Santa Margherita Di Pula M15 Cancun M15 Cancun M25 Prijedor M25 Doboj M25 Kiseljak M25 Gyula M15 Tabarka M15 Setubal M25 Bakio M15 Belgrade M25+H Ajaccio M25+H Kassel M25 Porto M15 Piombino M15 Zlatibor M25 Santa Margherita Di Pula M25 Santa Margherita Di Pula M25 Santa Margherita Di Pula M25 Monastir M25 Saint Dizier M25 Trento M15 Porec M15 Antalya M15 Antalya M15 Antalya M15 Antalya M15 Prijedor M25 Bakio M25 Antalya M25 Antalya M25 Antalya Germany F4 (Kaltenkirchen) Ismaning Challenger M25 Antalya Sarajevo Challenger Sarajevo Challenger Banja Luka Challenger Sarajevo Challenger Banja Luka Challenger St. Remy Challenger St. Remy Challenger Cherbourg Challenger Blois Challenger Portoroz Challenger St. Remy Challenger Ortisei Challenger Brescia Challenger Bergamo Challenger St. Brieuc Challenger Astana Challenger Segovia Challenger Ortisei Challenger Ho Chi Minh City Challenger Pune Challenger Bangalore Challenger Playford Challenger Canberra Challenger Budapest Challenger Drummondville Challenger Lille Challenger Taipei City Challenger Nanchang Challenger Anning Challenger Bordeaux Challenger Blois Challenger Milan Challenger Astana Challenger Binghamton Challenger Lexington Challenger Cordenons Challenger Mallorca Challenger Cassis Challenger Istanbul Challenger Orleans Challenger Florence Challenger Barcelona Challenger Las Vegas Challenger Charlottesville Challenger Mouilleron-Le-Captif Challenger Noumea Challenger Canberra Challenger Budapest Challenger St. Brieuc Challenger Puerto Vallarta Challenger Lyon Challenger Bratislava Challenger Parma Challenger Segovia Challenger Mallorca Challenger Cassis Challenger Istanbul Challenger Glasgow Challenger Nur-Sultan Challenger Mouilleron-Le-Captif Challenger Brest Challenger Helsinki Challenger Bendigo Challenger Bangkok Challenger Cherbourg Challenger Bergamo Challenger Pau Challenger Potchefstroom Challenger Todi Challenger Prague II Challenger Cordenons Challenger Parma Challenger Iasi Challenger Split Challenger Lisbon Challenger Ismaning Challenger Hamburg Challenger Ortisei Challenger Maia Challenger Quimper Challenger Quimper 2 Challenger Potchefstroom 1 Challenger Nur-Sultan 1 Challenger Nur-Sultan 2 Challenger St. Petersburg 1 Challenger Biella 3 Challenger Lugano Challenger Zadar Challenger Split 1 Challenger Oeiras 2 Challenger Rome 1 Challenger Ostrava Challenger Oeiras 3 Challenger Biella 7 Challenger Lyon Challenger Forli Challenger Milan Challenger Perugia Challenger Iasi Challenger Nur-Sultan 3 Challenger Nur-Sultan 4 Challenger Segovia Challenger Trieste Challenger Cordenons Challenger Meerbusch Challenger Verona Challenger St. Tropez Challenger Banja Luka Challenger Cassis Challenger Istanbul 2 Challenger Ambato Challenger Biel Challenger Orleans Challenger Alicante Challenger Losinj Challenger Brest Challenger Bergamo Challenger Roanne Challenger Ortisei Challenger Manama Challenger Antalya 3 Challenger Antalya 4 Challenger Forli 1 Challenger Forli 2 Challenger Forli 3 Challenger Bengalaru 1 Challenger Bengalaru 2 Challenger Forli 5 Challenger Phoenix Challenger Zadar Challenger Lugano Challenger Sanremo Challenger Barletta Challenger Split Challenger Rome 1 Challenger Aix En Provence Challenger Mauthausen Challenger Bordeaux Challenger Zagreb Challenger Vicenza Challenger Troisdorf Challenger Forli 6 Challenger Poznan Challenger Perugia Challenger Lyon Challenger Ilkley Challenger Porto Challenger Trieste Challenger Pozoblanco Challenger Segovia Challenger San Benedetto Challenger San Marino Challenger Banja Luka Challenger Como Challenger Cassis Challenger Rennes Challenger Sibiu Challenger Orleans Challenger Mouilleron-Le-Captif Challenger St. Tropez Challenger Ismaning Challenger Vilnus Challenger Brest Challenger Ortisei Challenger Maia Challenger Quimper Challenger Koblenz Challenger Cherbourg Challenger Antalya Challenger Lugano Challenger Las Franquesas del Valles Challenger Zadar Challenger Lille Challenger Madrid Challenger Rome Challenger Split Challenger Prague 2 Challenger Turin Challenger Skopje Challenger Vicenza Challenger Surbiton Challenger Nottingham Challenger Perugia Challenger Modena Challenger Salzburg Challenger Verona Challenger Maspalomas Challenger Orleans Challenger Bendigo Challenger Noumea Challenger Porto Challenger Rennes Challenger Roanne Challenger Canberra Challenger Shanghai Challenger Segovia Challenger St. Tropez Challenger Madrid Challenger Lille Challenger Bordeaux Challenger Open Parc - Lyon Antalya Open - Antalya Plava Laguna Croatia Open - Umag Belgrade 2 - Belgrade Tata Open Maharashtra - Pune Qatar ExxonMobil Open - Doha Barcelona Open Banc Sabadell - Barcelona Open Parc - Lyon Tel Aviv Watergen Open - Tel Aviv Tennis Napoli Open - Naples Open 13 Provence - Marseille Grand Prix Hassan II - Marrakech Barcelona Open Banc Sabadell - Barcelona Banja Luka Open - Banja Luka cinch Championships - London Open Sud de France - Montpellier BNP Paribas Open - Indian Wells Miami Open - Miami Rolex Paris Masters - Paris Mutua Madrid Open - Madrid Internazionali BNL d'Italia - Rome French Open - Paris French Open - Paris U.S. Open - New York Australian Open - Melbourne French Open - Paris Wimbledon - London U.S. Open - New York Australian Open - Melbourne French Open - Paris Davis Cup, Group II, 1R, BIH-LUX 4-1 Davis Cup, Group II, 3R, BIH-LTU 2-3 Davis Cup, Group II, 1R, ZIM-BIH 1-4 Davis Cup, Group II, 3R, LTU-BIH 0-5 Davis Cup, World Group, QR, AUS-BIH 4-0 Davis Cup, Group I, 1R, BIH-MEX 3-1 All Lower level tournaments Open Parc - Lyon Davis Cup, Group I, 1R, PER-BIH 3-2 Davis Cup, Group I, PO, BUL-BIH 1-3 Davis Cup, Group I, 1R, ECU-BIH 3-2